Stack:後進先出 Last-in, first-out(碟盤子)
history 是一個 object,同時也是 React-Router 的主要相依來源之一,用於記錄 route 中 path 的變化
history 是一個 mutable 的 object 包含以下 property & method
{
    length: 2, // history stack 的數量
    
    // Listening
    listen: ƒ listen(listener), // 監聽 locaiton 更改的事件
    action: "POP", // 現在的行為包含 PUSH, REPLACE, POP 三種
    location: { // 現在的 location
        pathname: "/",
        search: "",
        hash: "",
        state: undefined
    },
    // Navigation
    block: ƒ block(prompt), // 防止更改 history stack
    push: ƒ push(path, state), // 增加一個新 path 的到 history stack
    replace: ƒ replace(path, state) // 取代現在所在的 path
    go: ƒ go(n),// 移動 history stack 中距離現在所在的 path 的第 n 個位置
    goBack: ƒ goBack(), // 等同於 go(-1)
    goForward: ƒ goForward(), // 等同於 go(1)
    // Creating Hrefs
    createHref: ƒ createHref(location), // 建立 link
}
history 中的 location object 和 location object 是同一個嗎?